import pymysql

# 建立数据库连接
conn = pymysql.connect(host='localhost', user='root', password='123456', database='history')

# 创建游标对象
cur = conn.cursor()

# 查询该数据库中所有表的列表
cur.execute("SHOW TABLES")

# 遍历查询结果，针对每个表，查询列信息并将类型为 TEXT 的 date 列修改为 DATETIME 类型
for table_name in cur.fetchall():
    table_name = table_name[0]
    cur.execute(f"DESCRIBE `{table_name}`")
    columns = cur.fetchall()
    for column in columns:
        column_name, column_type, _, _, _, _, = column
        if column_name == "date" and column_type.startswith("text"):
            cur.execute(f"ALTER TABLE `{table_name}` MODIFY COLUMN date DATETIME")
    print("yes")

# 提交修改并关闭游标和数据库连接
conn.commit()
cur.close()
conn.close()
print("over")